/**
 * @file mod_relay_mod.h
 * @author Linquan  
 * @brief 中继模块
 * @version 1.0
 * @date 2024-08-14
 * 
 * @copyright Copyright (c) 2024
 * 
 */
#ifndef MOD_RELAY_MOD_H
#define MOD_RELAY_MOD_H


/*===========================[Includes]======================================*/
#include <stdint.h>



#include "../circuit_config.h"
#include "../circuit_node.h"

/*===========================[Defines]=======================================*/

/*===========================[Macros]========================================*/



/*===========================[Typedef]=======================================*/

typedef enum 
{
    MOD_RELAY_MOD_CIRCUIT = 0,
 
} mod_relay_mod_circuit_ID_t;



/** 对下接的通用节点类型做前置声明 */
typedef struct circuit_node_t circuit_node_t;

/**
 * @brief 中继模块设备的 实时状态信息
 * 
 */
typedef struct 
{
   uint8_t dev_status; /**> 设备状态包括：报警、离线、故障、正常等 */

    
}RT_DATA_TYPE(TYPE_MOD_RELAY);



/**
 * @brief 中继模块设备的 配置信息
 * 
 */
typedef struct 
{
    char*               config_file_name;       /**> 配置文件名称 */ 
    char*               UC_code;                /**> uc编码,以文本形式保存，需要解析的时候用atoi转换 */
  
    node_tree_ptr_t      node_tree_ptr;         /**> 中继模块下挂探测器节点指针,需要用cycle_node_t类型转换 */
  
}CONFIG_INFO_TYPE(TYPE_MOD_RELAY);

extern  node_operate_irf_t OP_FUNC_IRF(TYPE_MOD_RELAY);










/*===========================[Global Prototypes]=============================*/



#endif




